Background
The purpose of this service was to have a way to make copies of deployments in SSDS. Often times we want to duplicate an instance of a deployment, but we want to copy all of its sub-deployment children as well, hence the "deep" part of the copy. This method takes in a <code>DataProducer</code> that must be of type "deployment" and then creates "deep" copy of it and persists the new copy. It pulls in the options specified in the incoming parameters to create a unique copy of the DataProducers and DataContainer (outputs). All the rest of the object should be linked to the ones that already exist in the peristent storage. The new ID of the duplicate deployment is returned.
The Interface
| Return |
Parameters |
| The ID of the newly generated deployment |
- DataProducer to Copy
- Date the copy should start at
- A boolean to indicate if the old (original) should be closed
- Date the old (original) should use as an end date (if to be closed)
- String that will be the name of the new deployment (copy)
- String that is the base of the data stream URI which should be
|
So the API interface looks something like:
public Long createDuplicateDeepDeployment(
DataProducer deploymentToCopy, Date newStartDate, boolean closeOld, Date oldEndDate, String newHeadDeploymentName, String baseDataStreamUri )
Java EJB client
Under construction
REST Style client
To use this service via HTTP (REST Style), the call would be constructed using this format:
http:&p1Type=DataProducer&p1Value=DataProducer|id=1938292
&p2Type=Date&p2Value=2008-12-01T00:00:00Z
&p3Type=boolean&p3Value=true
&p4Type=Date&p4Value=2008-11-30T00:00:00Z
&p5Type=String&p5Value=New copy of Deployment
&p6Type=String&p6Value=http:
And the return might looks something like this:
Result(s):
java.lang.Long|29985
Web Services client
Under construction